package com.audience.testtractor;

public class MainThread {

    public static void main(String[] args) {
        //这里不做关于IO 和 业务的事情

        //1,创建 IO Thread（一个或者多个）
        SelectorThreadGroup boss = new SelectorThreadGroup(1);   //混杂模式
        //boss有自己的线程组

        //混杂模式，只有一个线程负责accept，每个都会被分配client，进行R/W
        SelectorThreadGroup worker = new SelectorThreadGroup(3);   //混杂模式
        //worker有自己的线程组

        //2，我应该把监听（9999）的 server 注册到某一个selector上
        boss.setWorker(worker);
        //但是boss持有worker引用
        /**
         * boss里选一个线程注册listen，触发bind，从而，这个不选中的线程得持有workerGroup的引用
         * 因为未来listen一旦accept得到client后得去worker中next出一个线程分配
         */
        boss.bind(9999);
    }

}
